home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Danny Amor's Online Library
/
Danny Amor's Online Library - Volume 1.iso
/
html
/
faqs
/
faq
/
inn-faq
/
part4
< prev
Wrap
Text File
|
1995-07-25
|
19KB
|
511 lines
Subject: INN FAQ Part 4/4: Appendix A: Norman's install guide
Newsgroups: news.software.nntp,news.software.b,news.answers
From: tal@Warren.MENTORG.COM (Tom Limoncelli)
Date: 20 Aug 1994 04:00:21 -0000
Posted-By: auto-faq 2.4
Archive-name: inn-faq/part4
Last Changed: $Id: FAQ-inn.4,v 1.2 1994/02/04 16:20:28 tal Exp $
This is a separate guide for installing INN addressed to
UNIX and System Administration novices. It is written for
installation of INN 1.4 on a Sun SPARCstation 10/30 running
Solaris 1.1 (SunOS 4.1.3). This guide is maintained by
Norman J. Pieniazek (norman@giardia.pdb.cdc.gov). Please
send updates and corrections to him.
This guide is composed of following parts:
I. SYSTEM REQUIREMENTS
II. INSTALLATION OF INN 1.4
III. UPGRADING FROM INN 1.3 TO INN 1.4
IV. MAINTENANCE OF INN
V. INSTALLATION OF XVNEWS, A SUN OPENWINDOWS
NEWSREADER
I. SYSTEM REQUIREMENTS
1. INN will not install nor run on Sun SPARCstation under
plain Solaris 1.1 unless you install some software
packages and utilities. Also, your machines IP number
has to be entered in a Domain Name Service database
(DNS) to be resolvable. Ask your Network Administrator
about DNS or read the O'Reilly & Associates, Inc.
book: "DNS and BIND by Paul Albitz & Cricket Liu,
ISBN 1-56592-010-4.
Further, test the resolver on your machine by
pinging a hostname not entered in your /etc/hosts file.
For example, type:
ping ncbi.nlm.nih.gov
The response should be: "ncbi.nlm.nih.gov is alive".
If you get: "unknown host", consult the O'Reilly book.
2. Be sure to su to root before performing tasks
outlined below. Next, check if you have a directory
/usr/local and about 90 Mb of space in the partition
where this directory is located. Create directories:
/usr/local/bin, /usr/local/lib and /usr/local/man if
you do not have them. Add /usr/local/bin to your path
and /usr/local/man to your MANPATH.
3. INN uses gnu versions of grep, awk and sed. Moreover,
it is recommended to compile INN with the gnu
versions of make and the gnu gcc compiler instead of
the Sun's unbundled cc compiler. If you don't have
the gnu software package, create a directory
/usr/local/gnu, cd to this directory and ftp to
aeneas.mit.edu (18.71.0.38). Go to
directory /pub/gnu and get the following files
(versions as of February 4, 1994):
bison bison-1.22.tar.gz
gawk gawk-2.15.4.tar.gz
gcc gcc-2.5.8.tar.gz
grep grep-2.0.tar.gz
gzip gzip-1.2.4.tar
make make-3.70.tar.gz
patch patch-2.1.tar.gz
perl perl-4.036.tar.gz
sed sed-2.03.tar.gz
texinfo texinfo-3.1.tar.gz
Installation of these programs is quite complicated,
but is really beneficial. After you complete the
installation, check if older versions of these programs
are not present somewhere in your path. Delete or
rename these old versions.
a. Start with gzip. In /usr/local/gnu type:
"tar xvf gzip-1.2.4.tar". A directory gzip-1.2.4 will
be created. Change to this directory and type:
"sh ./configure". Next, edit the Makefile
with the vi editor and change the line starting with
"CC" to read: "CC = cc". Then, type: "make".
Compilation should complete without errors. Finally,
type: "make install" to complete installation of gzip,
gunzip, and other utilities in /usr/local/bin.
b. Compile and install texinfo - info, makeinfo, the GNU
hypertext system. Makeinfo is needed for successful
installation of many GNU programs and utilities.
In /usr/local/gnu type: "gunzip texinfo-3.1.tar.gz".
Next, type: "tar xvf texinfo-3.1.tar". A directory
texinfo-3.1 will be created. Cd to this directory
and type: "sh ./configure". Next, edit the Makefile
as described above for gzip. Now, type: "make"
and ignore any non-fatal errors. Finally, type:
"make install".
c. Uncompress, compile and install gnu make. Follow the
steps described for texinfo. Gnu make will install in
/usr/local/bin. To disable Sun's make, cd to /usr/bin
and type: "mv make make.sun".
d. Compile and install bison following the procedure
described for texinfo.
e. Uncompress gcc. Cd to /usr/local/gnu/gcc-2.5.8 and
type:
sh ./configure --target=sparc-sun-sunos4.1
Next type:
make LANGUAGES=c
This step will take about 17 minutes to complete.
Ignore warnings reported for insn-emit.c. Next, type:
make stage1
Ignore reported non-fatal errors. Next, type:
make CC="stage1/xgcc -Bstage1/" CFLAGS="-g -O"\
LANGUAGES=c
This step will take about 19 minutes to complete.
Next, type:
make stage2
Ignore reported non-fatal errors. Next, type:
make CC="stage2/xgcc -Bstage2/" CFLAGS="-g -O"\
LANGUAGES=c
In this step, which lasts about 13 minutes, you will
make the final stage 3 compiler. Now type: "make
compare". No errors should be reported here. Finally,
type:
make install CC="stage2/xgcc -Bstage2/" CFLAGS="-g\
-O" LANGUAGES=c
to install the gcc compiler. It is advisable to
recompile patch, gzip, texinfo, make and bison with
gcc. It will be a good test for proper gcc
functionality.
f. Uncompress gawk. Cd to directory gawk-2.15.4 and type:
./configure sunos41
Next type: "make". When gawk will compile, type:
make install
Finally, disable Sun's awk by typing:
mv /usr/bin/awk /usr/bin/awk_sun
and create a link to gawk for awk by typing:
ln -s /usr/local/bin/gawk /usr/bin/awk
g. Uncompress grep. Cd to directory grep-2.0 and type:
./configure
Next type: "make" and "make install". Grep will
also be installed in /usr/local/bin as fgrep
and egrep. Finally, as some programs expect to find
grep, egrep and fgrep in /usr/bin, disable Sun's grep
and create appropriate links, just like described
for awk. INN expects to find a program "egnugrep" in
/usr/local/bin. Create it by typing:
cp /usr/local/bin/egrep /usr/local/bin/egnugrep
h. Uncompress sed and patch. Compile and install these
utilities following the instructions for grep.
i. INN comes with some scripts written in the perl
language. Uncompress perl, cd to directory perl-4.036
and type:
sh ./Configure -d
and hit Return for default answers to all questions.
Next, type: "make depend", then "make". Now type:
make test
to check, if perl works without errors. Finally,
type:
make install
to complete installation of perl.
II. INSTALLATION OF INN 1.4
1. As root, create directories: /usr/local/inn1.4 (this
will be your $inn directory) and /usr/local/news.
2. Cd to $inn. Get: inn1.4sec.tar.Z from ftp.uu.net
(192.48.96.9). This file is in the directory:
/networking/news/nntp/inn. As for all files, please
remember to set the file type in ftp to binary.
3. From the same source and directory get the Frequently
Asked Questions (FAQ) files:
faq-inn-1.Z
faq-inn-2.Z
faq-inn-3.Z
faq-inn-4.Z (this file)
faq-nov.Z
4. To uncompress the FAQ files type: "uncompress faq-*.
Print the FAQs and read them before proceeding further.
6. In $inn type: "zcat inn1.4sec.tar.Z | tar xvf -". This
will install inn files for compilation.
7. Change directory to $inn/config, and type:
cp config.dist config.data
chmod 644 config.data
Now use the vi editor to edit config.data. You should
select gcc as the compiler by changing the line that
starts with "CC" to read "CC gcc". Many lines in
config.data define the location of various files
and directories. It's OK to leave defaults, but
check if you have ample space in the partition
where the articles will be stored (/var/spool). More
information on where INN expects to find certain files
is in: $inn/samples/innshellvars. If necessary, edit
the config.data and innshellvars to reflect your
configuration. Please make sure that specified
directories and utilities exist on your system.
8. Change directory to $inn. Type: "make world". Now
type:
cat */lint
Here, you will get a list of compiler warnings and
errors. In addition, "make" created in this step
a file: "$inn/Install.ms". Print it by typing:
nroff -ms Install.ms | lpr
Install.ms is a manual for installation of INN written
by Rich Salz, the author of INN. There is a lot of
important and interesting information in his manual.
9. If you got no fatal errors from make, go to the
$inn/site directory
and type: "make all".
10. There are some scripts and control files listed in
inn-faqs and Install.ms that may be modified at this
point. For most installations, the default settings
are OK.
11. Now cd to $inn and type: "make install" to complete
basic installation of INN.
12. To finish installation of INN, run the BUILD script
in the $inn directory by typing "sh BUILD". This
script will ask a series of configuration questions
that are easy to answer. Please note that if your have
"history.*" files in your /usr/local/news directory
from a previous or failed installation of INN, the
BUILD script will not complete. Rename them to
"old.history.*" and re-run the BUILD script.
13. You need a site that will feed news to you.
This will depend on your geographic location and
organization. Ask a System Administrator of a site
close to you for hints.
14. Ftp to your newsfeeding site and get the "active" file
from there. Place this file in your /usr/local/news
directory and edit it to your taste. Remember to
include the "control" and "junk" newsgroups. Also, you
have to edit the following files in /usr/local/news:
newsfeeds, hosts.nntp and nnrp.access.
15. To check for syntax errors in INN control files,
file ownership, permissions and other things type:
/usr/bin/perl /usr/local/news/bin/inncheck
and correct any errors reported by inncheck.
16. Look at the file "rc.news" in /usr/local/etc.
It's advisable to enable the innwatch utility.
Innwatch will throttle the newsserver when your disk
will get full and prevent crashes. Change the line
starting with "DOINNWATCH" to read "DOINNWATCH=true".
Now type: "sh /usr/local/etc/rc.news"
and look in /var/log/syslog for errors. Also, type:
ps -aux| grep news
and check, if the innd process owner is news.
17. In /etc/aliases create an entry: "usenet: <you, or
root>". Next type: "/usr/ucb/newaliases" to inform the
sendmail program that the aliases file has changed.
If you are running YP (NIS) on your network, you may
optionally add the "usenet" alias to your YP aliases
file. If the machine you are installing INN on is the
YP master and the file "/etc/aliases" is the source of
the YP aliases map, you should type: "cd /var/yp"
followed by "make". Reboot and restart innd (see #16).
18. To get daily reports on the newsserver activity from
the "news.daily" script and to enable the "expire"
utility type: "/bin/crontab -e news" and insert the
following line:
40 23 * * * /usr/local/news/bin/news.daily delayrm
or, if you are using overchan (in newsfeeds):
40 23 * * * /usr/local/news/bin/news.daily delayrm\
expireover
19. To set-up complete logging of the server activities
and have them ready for a report by the "news.daily"
script, you have to edit your /etc/syslog.conf file.
Insert at the end of this file the content of
the syslog.conf file written by Rich Salz. This file
is in: $inn/syslog. Please check, if you have the
directories and files mentioned in Rich's syslog.conf.
20. Run tests from your machine to the server (to your
machine at telnet port 119). See inn-faqs for details.
21. After completing these test, be sure to delete the
entry for your machine from the hosts.nntp file. If
you will not do it, your machine will be treated as a
"feeder" and not as a "reader".
22. Set posting.
a. Edit the /usr/local/news/newsfeeds file and add:
<alias for your feed>/<full address of feed\
:*\ (for all local postings)
:Tf,Wnm: (standard entry)
b. Edit /usr/local/news/nntpsend.ctl file and add:
<alias for your feed>:<full address of feed>::\
-T1800 -t300
c. Type: "/bin/crontab -e news" and insert a line:
0,10,20,30,40,50 * * * *\
/usr/local/news/bin/nntpsend
d. Run inncheck (see #15).
e. Post to misc.test and include "reply" in the
Subject line, automatic responses will be mailed to
usenet (see #17) within a few minutes.
23. To start innd automatically at bootup, include at the
end of your rc.local the following lines:
#
# Start INN news service - Internet News Daemon (innd)
#
if [ -f /usr/local/etc/rc.news ]; then
/usr/local/etc/rc.news; echo "Starting INN news
service"
fi
24. Watch the news.daily reports in your mail for any
additional errors. To run the news.daily script
at any time manually, FIRST SU FROM ROOT TO "news"
and type: "/usr/local/news/news.daily". A mail to
"usenet" should arrive within a couple of minutes
and may report important configuration problems.
III. UPGRADING FROM INN 1.3 TO INN 1.4
1. Stop the server. Type:
ctlinnd shutdown "upgrade"
2. Create a directory /usr/local/inn1.4, this will be
your $inn directory. cd to $inn. Next, ftp to
ftp.uu.net, cd to directory: /networking/news/nntp/inn
and get the following files:
inn1.4sec.tar.Z
faq-inn-1.Z
faq-inn-2.Z
faq-inn-3.Z
faq-inn-4.Z (this file)
faq-nov.Z
Uncompress and print the FAQs. Next, type:
zcat inn1.4sec.tar.Z | tar xvf -
Print the README file. To print the Install file,
type: "make Install.ms" followed by:
nroff -ms Install.ms | lpr
3. Now, cd to $inn/config and type the following commands:
make subst
cp config.dist config.data
./subst -f {OLDFILE} config.data
where {OLDFILE} is the location of config.data in your
INN 1.3 directory. Be sure to check, if in your old
config.data the "CC" line reads "CC gcc".
Ignore warnings about new lines. Next, type:
make sedtest
No errors should be reported here. Now, cd to $inn
and type this series of commands:
make quiet
cd ../lib
make libinn.a lint
cd ../frontends
make all
cd ../innd
make all
cd ../nnrpd
make all
cd ../backends
make all
cd ../expire
make all
cd ../site
make all
cd ..
make update
4. Restart innd.
IV. MAINTENANCE OF INN
1. Adding new groups - see also Part IV, Section 3.b,:
a. Type: "ctlinnd pause 'edit active'"
b. Edit the active file. The format is:
groupname himark lomark flag.
Set himark to 0000000000 and lomark to 0000000001.
c. Run inncheck (see #11) to check the new active file
for errors.
d. Type: "ctlinnd reload active 'new active'".
e. Type: "ctlinnd go 'edit active'".
2. New groups are sometimes added automatically through
a control message. A mail message to usenet will alert
to such an automatic change to the active file. If you
do not want to subscribe to a particular news group,
change directory to /usr/local/news and type:
ctlinnd rmgroup <group name>
3. Sometimes, a mail message will arrive for usenet with
a checkgroups file. Remove header, save the body of
the message in:
/usr/local/news/bin/control/news_control/news_control_
todaysdate
cd to that directory and type:
../docheckgroups <news_control_todaysdate
>todaysdate_pre
Read the output file (todaysdate_pre) and carry out all
the instructions that you think pertain to your
situation. Read the man pages for "active" and "ctlinnd"
for more info. To implement the changes, you will have to
change to the directory: /usr/local/news and:
a. remove a discontinued group:
type: "ctlinnd rmgroup <group name>"
b. add a group:
type: "ctlinnd newgroup <group name> flag <creator
name>"
c. mark a group correctly:
type: "ctlinnd changegroup <group name> flag"
Run inncheck and repeat the docheckgroups command from
the /usr/local/bin/control/news_control directory
by typing:
../docheckgroups <news_control_todaysdate
>todaysdate_after
Correct any reported problems. Also, you may have to
edit the /usr/local/news/newsgroups file to reflect
any changes you introduced.
4. Subscribe to and read the following newsgroups:
news.software.nntp
news.software.readers
5. IMPORTANT!!! Never run fsck on the drive where the
/spool/news files are located while running INN. Innd
has a lot of active disk I/O going on and fsck will show
a lot of errors.
Use ctlinnd to throttle, pause, or shutdown innd first
- see the manual page for ctlinnd.
V. INSTALLATION OF XVNEWS, A SUN OPENWINDOWS
NEWSREADER
1. Create a directory /usr/local/xvnews2.1 and cd to this
directory.
2. Ftp to dutiws.twi.tudelft.nl and get the file
xvnews.tar.gz from directory /pub/news.
3. Ungzip and untar xvnews.
4. Use your vi editor and edit the file xvnews.h
You will need to enter your settings for:
DOMAIN (on my machine: "pdb.cdc.gov")
ORGANIZATION (on my machine: "Centers for Disease
Control Atlanta, GA, USA")
NNTPSERVER (on my machine:
"giardia.pdb.cdc.gov")
These defaults can be overridden by environment
variables (see the xvnews man page).
5. Compile xvnews by typing: "make". I get some errors
on my system, but the program runs OK. Copy xvnews
to /usr/local/bin and xvnews.man to directory:
/usr/local/man/man1 as xvnews.1
--
Tom Limoncelli -- tal@warren.mentorg.com (work) -- tal@plts.org (play)
The internet is like a box of chocolates.